$(function () {
    $("#jqGrid").jqGrid({
        url: baseURL + 'cs/zrzyhghj/list',
        datatype: "json",
        colModel: [			
			{ label: 'zbsjId', name: 'zbsjId', index: 'zbsj_id', width: 50, key: true },
			{ label: '一级指标', name: 'oneZb', index: 'one_zb', width: 80 }, 			
			{ label: '二级指标', name: 'secZb', index: 'sec_zb', width: 80 }, 			
			{ label: '指标名称', name: 'zbName', index: 'zb_name', width: 80 }, 			
			{ label: '解释', name: 'js', index: 'js', width: 80 }, 			
			{ label: '指标层级', name: 'zbLevel', index: 'zb_level', width: 80 }, 			
			{ label: '部门id', name: 'deptId', index: 'dept_id', width: 80 }, 			
			{ label: '用户id', name: 'userId', index: 'user_id', width: 80 }, 			
			{ label: '国家标准', name: 'nationalStandards', index: 'national_standards', width: 80 }, 			
			{ label: '计算依据', name: 'calcuBasis', index: 'calcu_basis', width: 80 }, 			
			{ label: '创建时间', name: 'createTime', index: 'create_time', width: 80 }, 			
			{ label: '原始数据文件', name: 'oriDataFile', index: 'ori_data_file', width: 80 }			
        ],
		viewrecords: true,
        height: 385,
        rowNum: 10,
		rowList : [10,30,50],
        rownumbers: true, 
        rownumWidth: 25, 
        autowidth:true,
        multiselect: true,
        pager: "#jqGridPager",
        jsonReader : {
            root: "page.list",
            page: "page.currPage",
            total: "page.totalPage",
            records: "page.totalCount"
        },
        prmNames : {
            page:"page", 
            rows:"limit", 
            order: "order"
        },
        gridComplete:function(){
        	//隐藏grid底部滚动条
        	$("#jqGrid").closest(".ui-jqgrid-bdiv").css({ "overflow-x" : "hidden" }); 
        }
    });
});




var vm = new Vue({
	el:'#rrapp',
	data:{
		showList: true,
		title: null,
		zrzyhghj: {},
        zbAll:[],//返回的所有指标
        onezbinit:"一级指标1",
        onezblist:[],//一级指标存储
        onezbid:"1", // 一级指标id
        seczblist:[]//二级指标存储
	},
    mounted:function(){
        this.initonezb();
    },
	methods: {
	    initonezb:function () {
            $.ajax({
                // 编写json格式，设置属性和值
                url: baseURL + "cs/zb/list",
                contentType: "application/json;charset=UTF-8",
                data: '',
                dataType: "json",
                type: "get",
                success: function (data) {
                    // data格式为[{onezb:"一级指标1",二级指标:["二级指标001","二级指标002","二级指标003]},{},{}]
                    // alert(data);
                    vm.zbAll = [
                        {onezb:"一级指标1",sub:
                                [{seczb:"二级指标001"},{seczb:"二级指标002"},{seczb:"二级指标003"}]},
                        {onezb:"一级指标2",sub:
                                [{seczb:"二级指标003"},{seczb:"二级指标004"},{seczb:"二级指标005"}]},
                        {onezb:"一级指标3",sub:
                                [{seczb:"二级指标006"},{seczb:"二级指标007"},{seczb:"二级指标008"}]}];
                    // var re = data.page;
                    // var len = re.length;
                    // vm.onezblist = [];
                    // for(var i = 0;i<len;i++){
                    //     vm.onezblist.push(re[i])
                    // }
                    // $.each(re, function (key, value) { //每一行
                    //     var tr = "<option value=" + key + ">" + key + "</option>";
                    //     $("#secs").append(tr);
                    //     // mcslist.push(key);
                    // });
                }
            });
        },
        updatesec:function () {
            var s2 = document.getElementById("s2");
            s2.options.length=0;
	        this.zbAll.forEach(function (value, index) {
                if(value.onezb == vm.zrzyhghj.oneZb){
                    this.seczblist = value.sub;
                    this.seczblist.forEach(function(it,ind){
                        var option_s2 = document.createElement("option");
                        option_s2.innerHTML=this.seczblist[ind].seczb;
                        s2.appendChild(option_s2);
                    })
                    return;
                }
            })
        },
        // 异步查询一级指标
		query: function () {
			vm.reload();
		},
		add: function(){
			vm.showList = false;
			vm.title = "新增";
			vm.zrzyhghj = {};
			// 点击添加操作后，给tree赋值
            // vm.getZb();
		},
		update: function (event) {
			var zbsjId = getSelectedRow();
			if(zbsjId == null){
				return ;
			}
			vm.showList = false;
            vm.title = "修改";
            
            vm.getInfo(zbsjId)
		},
		saveOrUpdate: function (event) {
            if(!$('form').data("bootstrapValidator").isValid()){
                alert("表单验证没通过");
                return;
            };

            $('#btnSaveOrUpdate').button('loading').delay(1000).queue(function() {
                var url = vm.zrzyhghj.zbsjId == null ? "cs/zrzyhghj/save" : "cs/zrzyhghj/update";
                $.ajax({
                    type: "POST",
                    url: baseURL + url,
                    contentType: "application/json",
                    data: JSON.stringify(vm.zrzyhghj),
                    success: function(r){
                        if(r.code === 0){
                             layer.msg("操作成功", {icon: 1});
                             vm.reload();
                             $('#btnSaveOrUpdate').button('reset');
                             $('#btnSaveOrUpdate').dequeue();
                        }else{
                            layer.alert(r.msg);
                            $('#btnSaveOrUpdate').button('reset');
                            $('#btnSaveOrUpdate').dequeue();
                        }
                    }
                });
			});
		},
		del: function (event) {
			var zbsjIds = getSelectedRows();
			if(zbsjIds == null){
				return ;
			}
			var lock = false;
            layer.confirm('确定要删除选中的记录？', {
                btn: ['确定','取消'] //按钮
            }, function(){
               if(!lock) {
                    lock = true;
		            $.ajax({
                        type: "POST",
                        url: baseURL + "cs/zrzyhghj/delete",
                        contentType: "application/json",
                        data: JSON.stringify(zbsjIds),
                        success: function(r){
                            if(r.code == 0){
                                layer.msg("操作成功", {icon: 1});
                                $("#jqGrid").trigger("reloadGrid");
                            }else{
                                layer.alert(r.msg);
                            }
                        }
				    });
			    }
             }, function(){
             });
		},
		getInfo: function(zbsjId){
			$.get(baseURL + "cs/zrzyhghj/info/"+zbsjId, function(r){
                vm.zrzyhghj = r.zrzyhghj;
            });
		},
		reload: function (event) {
			vm.showList = true;
			var page = $("#jqGrid").jqGrid('getGridParam','page');
			$("#jqGrid").jqGrid('setGridParam',{ 
                page:page
            }).trigger("reloadGrid");
		},

        change:function () {
            $.ajax({
                // 编写json格式，设置属性和值
                url: baseURL + "cs/zb/list",
                contentType: "application/json;charset=UTF-8",
                data: '',
                dataType: "json",
                type: "get",
                success: function (data) {
                    var re = data.page;
                    $.each(re, function (key, value) { //每一行
                        var tr = "<option value=" + key + ">" + key + "</option>";
                        $("#secs").append(tr);
                        // mcslist.push(key);
                    });
                }
            });
}
        // // 获取指标信息
        // getZb: function(){
        //     //加载部门树
        //     $.get(baseURL + "cs/zb/list", function(r){
        //         zb_ztree = $.fn.zTree.init($("#zbTree"), zb_setting, r);
        //         var node = zb_ztree.getNodeByParam("secId", vm.zrzyhghj.secId);
        //         if(node != null){
        //             zb_ztree.selectNode(node);
        //             // layer.out('node.name',node.name);
        //             vm.zrzyhghj.oneZb = node.name;
        //         }
        //     })
        // },
        // 创建zbTree树，
        // zbTree: function(){
        //     layer.open({
        //         type: 1,
        //         offset: '50px',
        //         skin: 'layui-layer-molv',
        //         title: "选择指标",
        //         area: ['300px', '450px'],
        //         shade: 0,
        //         shadeClose: false,
        //         content: jQuery("#zbLayer"),
        //         btn: ['确定', '取消'],
        //         btn1: function (index) {
        //             // alert(index)
        //             var node = zb_ztree.getSelectedNodes();
        //             // alert(node)
        //             //选择上级部门
        //             vm.zrzyhghj.oneId = node[0].oneId;
        //             vm.zrzyhghj.oneZb = node[0].name;
        //             alert(vm.zrzyhghj.oneId ),
        //             alert(vm.zrzyhghj.oneZb),
        //
        //             layer.close(index);
        //         }
        //     });
        // }
	}
});

$(function () {
    $('form').bootstrapValidator({
        message: 'This value is not valid',
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },
        fields: {
            js: {
                message: '指标解释填写失败',
                validators: {
                    notEmpty: {
                        message: '指标解释信息不能为空'
                    },
                    stringLength: {
                        min: 6,
                        max: 18,
                        message: '指标解释长度必须在6到18位之间'
                    }
                }
            },
            deptid: {
                message: '部门id填写失败',
                validators: {
                    notEmpty: {
                        message: '部门id不能为空'
                    },
                    lessThan:{
                        value:100,
                        message:"最大值为100"

                    },
                    greaterThan:{
                        value:10,
                        message:"最小值为10"
                    },
                    stringLength: {
                        min: 1,
                        max: 4,
                        message: '部门id长度必须在1到4位之间'
                    },
                    numeric:{
                        message: '部门id为数值类型'
                    },
                    regexp: {
                        regexp: /^[a-zA-Z0-9_]+$/,
                        message: '用户名只能包含大写、小写、数字和下划线'
                    }
                }
            }
        }

    });
});

// Validate the form manually
$('#validateBtn').click(function() {
    $('form').bootstrapValidator('validate');
});

$('#resetBtn').click(function() {
    $('form').data('bootstrapValidator').resetForm(true);
});

// 文件上传组件
$("#form_file").fileinput({
    uploadUrl:baseURL + "sys/file/upload", //接受请求地址
    uploadAsync : true, //默认异步上传
    showUpload : true, //是否显示上传按钮,跟随文本框的那个
    showRemove : true, //显示移除按钮,跟随文本框的那个
    showCaption : true,//是否显示标题,就是那个文本框
    showPreview : true, //是否显示预览,不写默认为true
    dropZoneEnabled : false,//是否显示拖拽区域，默认不写为true，但是会占用很大区域
    //minImageWidth: 50, //图片的最小宽度
    //minImageHeight: 50,//图片的最小高度
    //maxImageWidth: 1000,//图片的最大宽度
    //maxImageHeight: 1000,//图片的最大高度
    //maxFileSize: 0,//单位为kb，如果为0表示不限制文件大小
    //minFileCount: 0,
    maxFileCount : 1, //表示允许同时上传的最大文件个数
    enctype : 'multipart/form-data',
    validateInitialCount : true,
    previewFileIcon : "<i class='glyphicon glyphicon-king'></i>",
    msgFilesTooMany : "选择上传的文件数量({n}) 超过允许的最大数值{m}！",
    allowedFileExtensions : [ 'zip','xlsx','xls','pdf','docx','doc' ],//配置允许文件上传的类型
    // allowedPreviewTypes : [ 'image' ],//配置所有的被预览文件类型
    // allowedPreviewMimeTypes : [ 'jpg', 'png', 'gif' ],//控制被预览的所有mime类型
    language : 'zh'
})
//异步上传返回结果处理
$('#form_file').on('fileerror', function(event, data, msg) {
    console.log("fileerror");
    console.log(data);
});
//异步上传返回结果处理
$("#form_file").on("fileuploaded", function(event, data, previewId, index) {
    console.log("fileuploaded");
    var response = data.response;
    uploadfilename1=response.filename;
    vm.zrzyhghj.oriDataFile = uploadfilename1;
    $("#uploadfilename").val(uploadfilename1);
    // alert(response.filename);
    // $("#fileMd5").val(response.fileMd5);
    // $("#version").val(response.newVersionName);
    // $("#url").val(response.filePath);

});

//上传前
$('#form_file').on('filepreupload', function(event, data, previewId, index) {
    console.log("filepreupload");
});